1
โมเดลโปรแกรมแบบไคลเอ็นต์-เซิร์ฟเวอร์
AI031Lesson 11
00:00

โมเดล โปรแกรมแบบไคลเอ็นต์-เซิร์ฟเวอร์ เป็นโครงสร้างพื้นฐานสำหรับแอปพลิเคชันที่กระจาย (distributed) โดยไม่ได้ถูกกำหนดโดยฮาร์ดแวร์ แต่โดยการสื่อสารเชิงตรรกะ การสื่อสารเชิงตรรกะ ระหว่างสองกระบวนการ: กระบวนการหนึ่งคือ ไคลเอ็นต์ ที่เริ่มต้นคำขอเพื่อขอใช้ทรัพยากร ทรัพยากรและอีกกระบวนการหนึ่งคือ เซิร์ฟเวอร์ ที่จัดการและให้บริการทรัพยากรนั้น

1. การทำธุรกรรม 4 ขั้นตอน

ทุกการโต้ตอบจะดำเนินตามลำดับที่แน่นอน: (1) ไคลเอ็นต์ส่งคำขอ; (2) เซิร์ฟเวอร์ตีความและจัดการทรัพยากรภายใน; (3) เซิร์ฟเวอร์ส่งคำตอบกลับ; (4) ไคลเอ็นต์ประมวลผลข้อมูลที่ได้รับ (เช่น การแสดงผลหน้าเว็บด้วย HTML)

2. การจัดองค์ประกอบทางฮาร์ดแวร์

การสื่อสารอาศัยอุปกรณ์ อะแดปเตอร์เครือข่ายซึ่งเป็นอุปกรณ์เข้า-ออก (I/O) ข้อมูลเดินทางจากหน่วยประมวลผลกลาง (CPU) ผ่าน สะพานอินพุต-เอาต์พุต (I/O Bridge) และ บัสระบบ ไปยัง หน่วยความจำหลักในคำขอเว็บ เช่น http://www.google.com:80แพ็กเก็ตข้อมูลจะเดินทางผ่านบัสเหล่านี้เพื่อไปยังโค้ดโปรแกรมแอปพลิเคชัน

ผู้ใช้: ไคลเอ็นต์/เซิร์ฟเวอร์เคอร์เนล: โปรโตคอล TCP/IPฮาร์ดแวร์บัสอินพุต-เอาต์พุต (อะแดปเตอร์เครือข่าย | ดิสก์ | กราฟิกส์)

3. การสร้างความสมมาตรของโปรโตคอล

แอปพลิเคชันสมัยใหม่ใช้ ลำดับไบต์เครือข่าย (แบบบิ๊กเอนเดียน) เพื่อความสอดคล้องกัน ฟังก์ชันเช่น getaddrinfo ให้บริการ การแปลงชื่อโดเมนเป็นที่อยู่ไอพี โดยที่ยังคงเป็นอิสระจากระบบโปรโตคอล

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>